Publicidad:
La Coctelera

Lenguaje de programación II

Visual Basic 6.0

6 Noviembre 2008

1.1. Teoría de objetos


1.1.1. Clase

La Clase es un patrón (horma, molde, plantilla) que define las características de un objeto y describe qué apariencia y comportamiento debe tener el objeto. La clase define las propiedades del objeto y los métodos utilizados para controlar el comportamiento del objeto. Podríamos decir que existe la clase mamíferos, la clase estudiantes o la clase profesor. Como ejemplos de Visual Basic se tiene la clase Form, la clase CommandButton, la clase PictureBox o la clase TextBox.

1.1.2. Objeto

Cuando crea una aplicación en Visual Basic trabaja con objetos. Puede usar los objetos que proporciona Visual Basic como controles, formularios y objetos de acceso a datos. También puede controlar objetos de otras aplicaciones desde su aplicación de Visual Basic. Puede incluso crear sus propios objetos y definir propiedades y métodos adicionales para ellos.

El objeto se define como la instancia de una clase que combina datos (propiedades) y procedimientos (métodos) que pueden ser tratados como una unidad, por ejemplo un control, formulario, o aplicación. Cada objeto está definido por una clase. Para comprender la relación entre un objeto y su clase, piense en el molde de las galletas y las galletas. El molde es la clase que define las características de cada galleta, como por ejemplo el tamaño y la forma. Se utiliza la clase para crear objetos. Los objetos son las galletas. En el caso de Visual Basic los controles del cuadro de herramientas representan clases. El objeto conocido como control no existe hasta que se coloca en un formulario. Cuando crea un control, está creando una copia o instancia de la clase del control. Se crean todos los objetos como copias idénticas de sus clases. Una vez que existen como objetos individuales, es posible modificar sus propiedades. Por ejemplo, si coloca dos botones de comando en un formulario, cada objeto botón de comando es una instancia de la clase CommandButton. Cada objeto comparte un conjunto de características y capacidades comunes (propiedades, métodos y eventos), definidos por su clase. Sin embargo, cada uno tiene su propio nombre, se puede activar y desactivar por separado, se puede colocar en una ubicación distinta del formulario, etc. Son objetos distintos con distinto valor para la propiedad Name. Por ejemplo los botones de comando Command1, Command2, Command3 y Command4 comparten (provienen de) la misma clase, CommandButton.

1.1.3. Propiedades

En Visual Basic, los datos de un objeto (características, datos o atributos) se llaman propiedades. Puede cambiar las características de un objeto si modifica sus propiedades. Piense en la clase “Automóvil”, y en el objeto “MiCarro” como instancia de la clase Automóvil. Una propiedad de MiCarro es su Velocidad. En Visual Basic, se diría que MiCarro tiene la propiedad Velocidad, la cual se puede graduar modificando su valor. Suponga que el rango de velocidad de MiCarro es de 0 a 140 Kph, y desea establecerlo a 20. En Visual Basic se escribiría mediante la siguiente sintaxis:

MiCarro.Velocidad = 20

En el ejemplo anterior se estableció el valor de una propiedad. Las propiedades también pueden devolver sus valores de la siguiente manera:

Tacómetro = MiCarro.Velocidad

En los ejemplos anteriores y en adelante el signo igual “=” se lee como “se le asigna”. Este signo se usa en BASIC para asignar el valor de la parte izquierda a la parte derecha del signo. De esta manera, el primer ejemplo se lee “Propiedad Velocidad de MiCarro se le asigna 20”.

Se pueden establecer casi todas las propiedades en tiempo de diseño usando una ventana del IDE de Visual Basic conocida como Propiedades sin tener que escribir código alguno. Otras propiedades no están disponibles en tiempo de diseño, ya que no aparecen en la ventana de propiedades, por lo que se necesitará escribir código para establecer u obtener esas propiedades en tiempo de ejecución.

Por otra parte, es posible que durante la ejecución del programa ciertas propiedades no puedan ser modificadas, mientras que otras sí. En este sentido se tienen los siguientes tipos de propiedades:

a) Propiedades de lectura y escritura

Las propiedades cuyo valor se puede establecer y obtener en tiempo de ejecución se llaman propiedades de lectura y escritura.

b) Propiedades de sólo lectura

Las propiedades que sólo se pueden leer (obtener su valor), pero que no se pueden cambiar (establecer) en tiempo de ejecución se conocen como propiedades de sólo lectura. Estas propiedades sólo se pueden cambiar en tiempo de diseño.

Por ejemplo, la propiedad Velocidad de MiCarro es de lectura y escritura, ya que puede ser leída y establecida en tiempo de ejecución (auto andando); pero la propiedad “NivelDeGasolina” de MiCarro es de sólo lectura, ya que no se puede cambiar en tiempo de ejecución (auto andando), y se debe detener la aplicación para que en tiempo de diseño (auto detenido) se reabastezca el nivel de combustible.

En general, para cambiar (establecer) el valor de la propiedad de un objeto en tiempo de ejecución, se utiliza la sintaxis siguiente:

NombreDeObjeto.Propiedad = Valor

También para leer (obtener) el valor de la propiedad de un objeto en tiempo de ejecución se utiliza la sintaxis siguiente:

Variable = NombreDeObjeto.Propiedad

Sugerencia: Si va a usar el valor de una propiedad más de una vez, el código se ejecutará más rápidamente si almacena el valor en una variable.

1.1.4. Métodos

Corresponden a los diversos procedimientos que pueden operar sobre el objeto. Los métodos son parte de los objetos del mismo modo que las propiedades. Generalmente, los métodos son acciones que desea o está posibilitado a realizar el objeto, mientras que las propiedades son los atributos que puede establecer o recuperar. Se podría decir que MiCarro tiene un método "Acelerar" y podría usar la siguiente sintaxis para cambiar la velocidad:

MiCarro.Acelerar 20

Los métodos pueden afectar a los valores de las propiedades e inclusive activar procedimientos de evento que veremos mas adelante. En el ejemplo de MiCarro, el método Acelerar cambia la propiedad Velocidad. Cuando utiliza un método en el código, la sintaxis depende de los argumentos que necesite el método y de si el método devuelve o no un valor. En general se utiliza la sintaxis siguiente:

NombreDeObjeto.Método [Arg1, Arg2,...]

De ahora en adelante, en las sintaxis generales, los elementos que aparezcan entre corchetes [ ] son opcionales de la sintaxis. En este caso Arg1, Arg2,… son opcionales, de tal manera que si el método no requiere argumentos, la sintaxis sería:

NombreDeObjeto.Método

Si el método devuelve un valor útil, debe asignar el valor a una variable y utilizar paréntesis con o sin argumentos como se muestra a continuación:

Variable = NombreDeObjeto.Método([Arg1, Arg2,...])

1.1.5. Evento

Un evento es una acción reconocida por un objeto, como cuando el usuario hace clic con el Mouse o presiona una tecla. Los eventos no sólo son producidos por el usuario, también pueden ser ocasionados por el sistema, por aplicaciones externas, e inclusive por la misma aplicación. Por ejemplo, MiCarro podría tener los eventos "CambioDeVelocidad”, “Estacionarse”, Encendido”, “GiroIzquierdo”, etc. La sintaxis para alguno de estos eventos de MiCarro sería:

MiCarro_CambioDeVelocidad

MiCarro_Encendido

MiCarro_Estacionarse

En Visual Basic la sintaxis general para el evento de un objeto es:

NombreDeObjeto_NombreDeEvento

1.1.6. Procedimientos de evento

Un procedimiento de evento es una sección de código que se ejecuta cuando se produce el evento sobre un objeto determinado. Las aplicaciones controladas por eventos ejecutan código Basic como respuesta a un evento. Cada objeto de Visual Basic tiene un conjunto de eventos predefinidos. Si se produce uno de esos eventos, y su procedimiento de evento tiene código asociado, Visual Basic ejecuta ese código. A cada evento le corresponde una sección de código que es lo que se conoce como un procedimiento de evento. Cuando se desea que un control responda a un evento, se escribe código en el procedimiento de ese evento. El objeto MiCarro tiene un código en el procedimiento de evento CambioDeVelocidad, el cual define los pasos para mostrar la velocidad actual en el tacómetro, por ejemplo; y su estructura sería:

Private Sub MiCarro_CambioDeVelocidad()

{Área de código para mostrar velocidad}

End Sub

De modo que un procedimiento de evento en Visual Basic, es de la forma:

Private Sub NombreDeObjeto_NombreDeEvento()

{Área de código}

End Sub

Distintos tipos de eventos pueden ser reconocidos por un mismo objeto; por ejemplo, el objeto Form es susceptible al evento Click, y también al evento DblClick. El código de respuesta a los eventos, en cada caso, estará en lugares diferentes.

Private Sub Form_Click()

{Área de código para un clic sobre el Form}

End Sub

Private Sub Form_DblClick()

{Área de código para un doble clic sobre el Form}

End Sub

Por otra parte, distintos tipos de objetos pueden ser susceptibles a un mismo evento. Por ejemplo, la mayoría de los objetos reconocen el evento Click. Si el usuario hace clic sobre el cuerpo del formulario, o sobre el área de un botón de comando, se ejecutan códigos diferentes:

Private Sub Form_Click()

{Área de código para un clic sobre el formulario}

End Sub

Private Sub cmdBotón_Click()

{Área de código para un clic sobre el botón}

End Sub

1.1.7. Encapsulación

Esta característica de la OOP es la facultad de unificar el código y los datos que la clase u objeto contiene, así como ocultar el código que maneja dicha información. La encapsulación nos ayuda a olvidarnos de cual es la implementación realizada en los procedimientos y datos (métodos y propiedades) de una clase, para que sólo nos preocupemos de cómo usarlos. La encapsulación es la característica que permite ocultar cómo están codificados los métodos y propiedades de las clases. El mero hecho de crear un método o una propiedad en una clase ya implica que estamos usando la característica de la encapsulación en Visual Basic.

1.1.8. Polimorfismo

Muchas clases pueden proporcionar la misma propiedad o el mismo método y el que llama no tiene por qué saber la clase a la que pertenece el objeto antes de llamar a la propiedad o al método. Por ejemplo, una clase Automóvil y una clase Avión podrían tener la misma propiedad Velocidad o el mismo método Acelerar. El polimorfismo significa que puede establecer la Velocidad o invocar Acelerar sin saber si el objeto es MiCarro o MiAvión. Todos los métodos implementados en las clases deben tener una forma única de comportarse, y las propiedades de las clases deben ser consistentes con la información que corresponde tratar. El polimorfismo sería el contrato firmado para que esos procedimientos y datos se utilicen de forma adecuada. Se dice que una clase es polimórfica cuando podemos usar sus métodos y propiedades sin importarnos qué objeto los implementa. El Polimorfismo en Visual Basic se puede usar de dos formas diferentes, según se compruebe si el miembro de una clase (propiedad o método) pertenece al objeto que lo utiliza, en tiempo de diseño o en tiempo de ejecución.

servido por Nelson sin comentarios compártelo

sin comentarios · Escribe aquí tu comentario

Los comentarios están cerrados


Sobre mí

Avatar de Nelson

Lenguaje de programación II

Valencia, Venezuela
ver perfil »
contacto »
Ing. Electrónico Graduado de la UNEXPO Barquisimeto. Telef.: 0414-4185007 MSN: nelsonalcazar@hotmail.com

Fotos

Nelson Alcázar todavía no ha subido ninguna foto.

¡Anímale a hacerlo!

Buscar

suscríbete

Selecciona el agregador que utilices para suscribirte a este blog (también puedes obtener la URL de los feeds):

¿Qué es esto?

Crea tu blog gratis en La Coctelera